home *** CD-ROM | disk | FTP | other *** search
/ Softdisk Supreme / Softdisk Supreme.iso / pc / DSK Files / 0-49 / SD008b.dsk / HEX.TO.TEN.bas < prev    next >
BASIC Source File  |  2003-06-12  |  3KB  |  80 lines

  1. 100  REM <CTRL-J>************************    *                      *    *  BASE 10 TO HEX AND  *    *        BACK          *    *                      *    ************************
  2. 110  GOSUB 700
  3. 120  ONERR  GOTO 130
  4. 130  HOME : VTAB 3: HTAB 10
  5. 140  PRINT "<1> HEX TO BASE 10"
  6. 150  HTAB 10: PRINT "<2> BASE 10 TO HEX"
  7. 160  HTAB 10: PRINT "<3> QUIT
  8. 170  VTAB 11
  9. 180  HTAB 10: PRINT "WHICH? <";: GET A: PRINT A;">"
  10. 190  VTAB 8: HTAB 10: IF A <3  OR A >0  THEN  PRINT "-RETURN TO CHANGE-"
  11. 200  IF A = 1 GOTO 290
  12. 210  IF A = 2 GOTO 430
  13. 220  IF A = 3  THEN 660
  14. 230  GOTO 130
  15. 240  INPUT A$: IF  LEFT$(A$,1) = "Y"  THEN 290
  16. 250  PRINT "BASE 10 TO HEX ";
  17. 260  INPUT A$: IF  LEFT$(A$,1) = "Y"  THEN 1200
  18. 270  GOTO 130
  19. 280  REM <CTRL-J>************************    *                      *    *    HEX TO BASE 10    *    *                      *    ************************<CTRL-J>
  20. 290  VTAB 11: CALL  -958
  21. 300  HTAB 10: PRINT "INPUT HEX VALUE $";
  22. 310  INPUT "";H$
  23. 320  IF  LEN(H$) = 0  THEN 130
  24. 330 D = 0
  25. 340  FOR J = 1 TO  LEN(H$)
  26. 350 X =  ASC( MID$ (H$,J,1))
  27. 360  IF (X >47  AND X <58)  OR (X >64  AND X <71)  THEN D = D *16 +X -48 -(X >58) *7
  28. 370  NEXT J
  29. 380  VTAB 16: HTAB 8
  30. 390  PRINT "BASE 10 EQUIVALENT = ";D
  31. 400  VTAB 23: PRINT "    ANY KEY ";
  32. 410  GET Q$: PRINT : GOTO 290
  33. 420  REM <CTRL-J>************************    *                      *    *    BASE 10 TO HEX    *    *                      *    ************************<CTRL-J>
  34. 430  VTAB 11: CALL  -958
  35. 440  HTAB 7: PRINT "INPUT BASE 10 VALUE";
  36. 450  INPUT " ";T$
  37. 460  IF  LEN(T$) = 0  THEN 130
  38. 470 T =  VAL(T$)
  39. 480  IF T <1  THEN 430
  40. 490 T =  INT(T)
  41. 500 H = 0:H$ = " "
  42. 510  FOR J = 1 TO 15
  43. 520  IF T <16 ^J  THEN 550
  44. 530  NEXT J
  45. 540  PRINT "THE NUM IS TOO LARGE": GOTO 430
  46. 550  FOR K = J -1 TO 0  STEP  -1
  47. 560 H =  INT(T/16 ^K)
  48. 570 H$ = H$ + CHR$(H +48 +(H >9) *7)
  49. 580 T = T -H *16 ^K
  50. 590  NEXT K
  51. 600 L =  LEN(H$):H$ =  RIGHT$(H$,L -1)
  52. 610  VTAB 15: HTAB 8
  53. 620  PRINT "HEX VALUE = $";H$
  54. 630  VTAB 23: PRINT "   ANY KEY ";
  55. 640  GET Q$: PRINT : GOTO 430
  56. 650  REM <CTRL-J>************************    *                      *    *    END OF PROGRAM    *    *                      *    ************************<CTRL-J>
  57. 660  HOME 
  58. 670  PRINT  CHR$(4)"RUNHELLO"
  59. 680  END 
  60. 690  REM <CTRL-J>************************    *                      *    *  DIRECTIONS ON THE   *    *      CONVERTER       *    *                      *    ************************<CTRL-J>
  61. 700  HOME : SPEED= 255
  62. 710  VTAB 3
  63. 720  FOR K = 1 TO 40: PRINT "*";: NEXT 
  64. 730  GOSUB 870
  65. 740  PRINT "*";: HTAB 9
  66. 750  PRINT "THE FIRST PART OF MENU";: HTAB 40: PRINT "*";: GOSUB 870
  67. 760  PRINT "*";: HTAB 8: PRINT "IS EASY, ENTER A NUMBER.";: HTAB 40: PRINT "*";: GOSUB 870
  68. 770  PRINT "*";: HTAB 7: PRINT "< YOUR CHOICE FROM 1 TO 3 >";: HTAB 40: PRINT "*";: GOSUB 870
  69. 780  PRINT "*";: HTAB 18: PRINT "THEN";: HTAB 40: PRINT "*";: GOSUB 870
  70. 790  PRINT "*";: HTAB 7: PRINT "HIT RETURN WITHOUT AN INPUT";: HTAB 40: PRINT "*";: GOSUB 870
  71. 800  PRINT "*";: HTAB 7: PRINT "TO RETURN TO THE FIRST PART";: HTAB 40: PRINT "*";: GOSUB 870
  72. 810  PRINT "*";: HTAB 14: PRINT "OF THE MENU.";: HTAB 40: PRINT "*";: GOSUB 870
  73. 820  GOSUB 870
  74. 830  FOR K = 1 TO 40: PRINT "*";: NEXT K
  75. 840  VTAB 23: HTAB 12
  76. 850  PRINT "PRESS ANY KEY ";
  77. 860  GET Q$: PRINT : RETURN 
  78. 870  PRINT "*";: HTAB 40: PRINT "*";
  79. 880  RETURN 
  80. 900  REM ************************    *                      *    * THANKS TO ---------  *    *  MONTGOMERY A. LEE   *    *   FOR POKE 33,28     *    ************************